<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="UTF-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="X-UA-Compatible" content="ie=edge" />
    <title>文章列表</title>
    <link rel="stylesheet" href="./libs/bootstrap/css/bootstrap.min.css" />
    <link rel="stylesheet" href="css/reset.css" />
    <link rel="stylesheet" href="css/iconfont.css" />
    <link rel="stylesheet" href="css/main.css" />
    <script src="./libs/jquery-1.12.4.min.js"></script>
    <script src="./libs/bootstrap/js/bootstrap.min.js"></script>
    <!-- 引入模板引擎js文件 -->
    <script src="./libs/template-web.js"></script>
  </head>

  <body>
    <div class="container-fluid">
      <div class="common_title">文章类别管理</div>
      <div class="container-fluid common_con">
        <table
          class="table table-striped table-bordered table-hover mp20 category_table">
          <thead>
            <tr>
              <th>名称</th>
              <th>Slug</th>
              <th class="text-center" width="100">操作</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td>奇趣事</td>
              <td>funny</td>
              <td class="text-center">
                <a href="javascript:void(0)" data-toggle="modal" class="btn btn-info btn-xs" >编辑</a>
                <a href="javascript:void(0)" class="btn btn-danger btn-xs">删除</a>
              </td>
            </tr>
          </tbody>
          <tfoot>
            <tr>
              <td colspan="3" class="text-center">
                <button class="btn btn-success" id="xinzengfenlei" data-toggle="modal" data-target="#myModal">
                  新增分类
                </button>
              </td>
            </tr>
          </tfoot>
        </table>
      </div>
    </div>

    <div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="exampleModalLabel">
      <div class="modal-dialog" role="document">
        <div class="modal-content">
          <div class="modal-header">
            <button type="button" class="close" data-dismiss="modal" aria-label="Close">
              <span aria-hidden="true">&times;</span>
            </button>
            <h4 class="modal-title" id="exampleModalLabel">New message</h4>
          </div>
          <div class="modal-body">
            <form>
              <div class="form-group">
                <label for="recipient-name" class="control-label">分类名称</label>
                <input type="text" class="form-control" id="category-name" />
              </div>
              <div class="form-group">
                <label for="message-text" class="control-label">分类别名</label>
                <input class="form-control" id="slug-text" />
              </div>
            </form>
          </div>
          <div class="modal-footer">
            <button type="button" class="btn btn-default" data-dismiss="modal">关闭</button>
            <button type="button" class="btn btn-primary btn-change">Send message</button>
          </div>
        </div>
      </div>
    </div>
  </body>
</html>
<script src="./libs/https.js"></script>
<!-- 准备文章类别模板引擎 -->
<script type="text/html" id="tpl-list">
  {{each}}
  <tr>
    <td>{{$value.name}}</td>
    <td>{{$value.slug}}</td>
    <td class="text-center">
      <button data-id="{{$value.id}}" data-toggle="modal" data-target="#myModal" class=" btn btn-info btn-xs">
        编辑
      </button>
      <a href="javascript:void(0)" data-id="{{$value.id}}" class="btn btn-danger btn-xs btn-del">删除</a>
    </td>
  </tr>
  {{/each}}
</script>
<script>
  $(function () {
    function loadData() {
      // 发起ajax请求获取文章类别
      $.ajax({
        type: "get",
        url: BigNew.category_list,
        success: function (backData) {
          // console.log(backData);
          if (backData.code == 200) {
            let data = backData.data;
            // 创建模板引擎
            let htmlStr = template("tpl-list", data);
            // console.log(htmlStr);
            $("tbody").html(htmlStr);
          }
        },
      });
    }
    loadData();

    // 监听模态框的显示事件
    $("#myModal").on("show.bs.modal", function (e) {
      // console.log($(e.relatedTarget).text().trim());
      // 获得触发模态框的元素,新增按钮/编辑按钮
      if ($(e.relatedTarget).text().trim() == "新增分类") {
        // 通过新增按钮触发
        $("#exampleModalLabel").text("新增分类");
        $(".btn-change").text("新增");
      } else if($(e.relatedTarget).text().trim() == "编辑"){
        // 通过编辑按钮触发
        $("#exampleModalLabel").text("编辑分类");
        $(".btn-change").text("编辑");
        // 加载指定的类别数据
        window.dataid = $(e.relatedTarget).attr("data-id");
        // console.log(dataid);
        $.ajax({
          type: "get",
          url: BigNew.category_search,
          data: {
            id: dataid,
          },
          success: function (backData) {
            // console.log(backData);
            if (backData.code == 200) {
              // 将返回的数据渲染到指定结构
              $("#category-name").val(backData.data[0].name);
              $("#slug-text").val(backData.data[0].slug);
            }
          },
        });
      }
    });

    // 监听模态框状态，如果隐藏清空输入框内容
    $("#myModal").on("hidden.bs.modal", function (e) {
      $("#category-name").val("");
      $("#slug-text").val("");
    });
    // 给模态框的btn-change按钮设置点击事件、
    $('.btn-change').on('click',function(){
        let name = $('#category-name').val()
        let slug = $('#slug-text').val()
        // console.log($('.btn-change').text());
        if($('.btn-change').text() == '新增'){
          // 新增
            $.ajax({
                type: 'post',
                url: BigNew.category_add,
                data: {
                    name: name,
                    slug: slug
                },
                success: function(backData) {
                    // console.log(backData);
                    if(backData.code == 201){
                      // 关闭模态框
                      $("#myModal").modal('hide');
                      // 刷新页面
                      loadData()
                    }
                }
            })
        }else {
          // 编辑事件
          $.ajax({
            type: 'post',
            url: BigNew.category_edit,
            data: {
              name:name,
              slug:slug,
              id:dataid
            },
            success: function(backData) {
              // console.log(backData);
              if(backData.code == 200){
                $("#myModal").modal('hide');
                      // 刷新页面
                      loadData()
              }
            }
          })
        }
    })
  
  // 给tbody注册事件委托
  $('tbody').on('click','.btn-del',function(){
    let dataid = $(this).attr('data-id');
    // console.log(dataid);
    $.ajax({
      type: 'post',
      url: BigNew.category_delete,
      data: {
        id:dataid
      },
      success: function(backData) {
        // console.log(backData);
        if(backData.code == 204){
          alert(backData.msg)
          loadData()
        }
      }
    })
  })
  });
</script>
